Method and apparatus for setting speed/response performance parameters of a power driven wheelchair

ABSTRACT

A method of setting values of a multiplicity of performance parameters of a power driven wheelchair into a controller thereof for use by the controller in the operation of the wheelchair by a user comprises the steps of: grouping the multiplicity of performance parameters of the wheelchair into at least two groups, each group including more than one performance parameter; for each group, (a) establishing a corresponding relationship between a selected performance parameter of the group and each of the other performance parameters of the group; and (b) presetting the established relationships into the controller of the wheelchair; determining a value for the selected performance parameter of each group based on the user&#39;s capabilities of operating the wheelchair; entering the determined value for the selected performance parameter of each group into the controller; deriving automatically by the controller for each group a value for each of the other performance parameters of the group based on the entered value of the selected performance parameter of the group and the corresponding established relationships of each of the other performance parameters with the selected performance parameter of the group; and storing the entered and derived values of the performance parameters into the controller for use thereby in the operation of the wheelchair by the user.

BACKGROUND OF THE INVENTION

[0001] The present invention is directed to the field of power drivenwheelchairs, in general, and more particularly, to a method andapparatus for setting speed/response performance parameters thereof tothe operational capabilities of an individual user.

[0002] Power driven wheelchairs which may be of the type manufactured byInvacare Corporation of Elyria, Ohio, for example, generally includeright and left side drive wheels driven by a motor controller viarespectively corresponding right and left side drive motors, all ofwhich being disposed on the wheelchair. An exemplary illustration ofsuch a motor drive arrangement is shown in the schematic of FIG. 1.Referring to FIG. 1, a motor drive controller 10 which may be anInvacare Mk VI™ controller, for example, controls drive motors 12 and 14which are mechanically linked respectively to the right side and leftside drive wheels of the wheelchair. A user interface 16 which mayinclude a joystick 18 and selection switches (not shown) operable by auser is also disposed on the wheelchair in a convenient location to theuser. The user interface 16 is generally interfaced to the controller 10over a two wire serial coupling 20 to permit the user to select a driveprogram appropriate for operating the wheelchair in its environment andto adjust the direction and speed of the wheelchair within the selecteddrive program. The controller 10 may be programmed with a plurality ofdrive programs, each suited for a particular operating environment.

[0003] The motor controller 10 is generally powered by a battery source22, which may be 24 volts, for example, also disposed on the wheelchair.The drive motors 12 and 14 may be of the permanent magnet type and maybe either a gearless, brushless AC motor or a brush type DC motor. Thecontroller 10 may include a microcontroller interfaced and responsive tothe user interface 16 to control drive signals 24 and 26 to motors 12and 14, respectively, via a power switching arrangement configured inaccordance with the motor type being driven. The power switchingarrangement may be powered by the 24V battery 22. Thus, as the useradjusts the speed and direction of the wheelchair via the joystick ofinterface 16, appropriate drive signals 24 and 26 are controlled bycontroller 10 to drive the motors 12 and 14 accordingly. Controller 10generally controls motor speed to the user setting in a closed loopmanner.

[0004] Actual speed of each motor 12 and 14 is derived from signals 28and 30 respectively sensed therefrom. For example, for AC motors, a HallEffect sensor may be disposed at the motor for sensing and generating asignal representative of angular position. The controller 10 may derivemotor speed from a change in angular position for use as the actualspeed feedback signal for the closed loop speed control of the motor.For DC motors, the voltage Va across the armature and armature currentIa may be sensed from each motor 12 and 14 and provided to thecontroller 10 via lines 28 and 30, respectively. Controller 10 may inturn derive the actual speed of each motor 12 and 14 from the respectivevoltage Va and current Ia measurements thereof for use as the speedfeedback signal for the respective closed loop speed control of eachmotor 12 and 14.

[0005] For safety purposes, certain performance parameters of thewheelchair which may include, but not be limited to, forward speed,turning speed, reverse speed, response, forward acceleration, turningacceleration, turning deceleration, torque and braking (forward andreverse deceleration), for example, are preset during manufacture andstored in a non-volatile memory 32, which may be an electricallyerasable programmable read only memory (EEPROM), for example. The motorcontroller 10 is constrained in its control of the drive motors by theseperformance parameters. However, these factory preset performanceparameters are established for an average user and are not meant tosatisfy the safety needs and operating capabilities of all users. So,the wheelchair manufacturer stores the average performance parameters ina non-volatile memory which is alterable in the field, like the EEPROM.

[0006] When a power driven wheelchair is sold to a user at a dealership,for example, before the user may be allowed to operate the wheelchairunattended, a trained medical health adviser works with the user todetermine safe performance parameters for the user based on the user'scognitive response and physical limitations, like tremors, arthritis, .. . etc. Currently, each of the aforementioned performance parameters isindividually determined to satisfy each user's needs. Once determined,each of the new performance parameters is entered into the non-volatilememory 32 of the controller 10 through a remote programmer 34 which maybe electrically coupled to a port of the microcontroller of controller10 via signal lines 36, for example, thus, rendering the wheelchairunique to the user's safe operating capabilities. Each dealer isgenerally provided with one or more remote programmers. Each remoteprogrammer 34 may include a screen 38 for displaying interactive textand graphics and a plurality of pushbuttons 40 for communicating withthe microcontroller which is programmed to interact with the programmer34 and EEPROM 32 as will become more evident from the description foundherein below.

[0007] Determining each safe performance parameter for a user mayrequire an iterative procedure. That is, a user may first operate thewheelchair with a preset performance parameter, like forward speed, forexample, under the observation of the medical adviser. If the useroperation is found unacceptable, then a new parameter setting is enteredinto the controller via the programmer and the user operates thewheelchair with the newly entered parameter. From the observations, themedical adviser may re-adjust the parameter setting to better suit theuser's operating capabilities and the procedure is repeated until themedical adviser is satisfied that the parameter setting is safely withinthe user's operational capabilities. This iterative procedure willcontinue individually for each performance parameter for a drive programand the process is repeated for each drive program of the controller.

[0008] Understandably, the determination of the individual performanceparameters currently performed is a very timely and costly operationwhich needs improvement. The present invention is intended to addressthe timeliness and cost of the current parameter setting technique andprovide a method and apparatus which overcomes the drawbacks thereof.

SUMMARY OF THE INVENTION

[0009] In accordance with one aspect of the present invention, a methodof setting values of a multiplicity of performance parameters of a powerdriven wheelchair into a controller thereof for use by the controller inthe operation of the wheelchair by a user comprises the steps of:grouping the multiplicity of performance parameters of the wheelchairinto at least two groups, each group including more than one performanceparameter; for each group, (a) establishing a corresponding relationshipbetween a selected performance parameter of the group and each of theother performance parameters of the group; and (b) presetting theestablished relationships into the controller of the wheelchair;determining a value for the selected performance parameter of each groupbased on the user's capabilities of operating the wheelchair; enteringthe determined value for the selected performance parameter of eachgroup into the controller; deriving automatically by the controller foreach group a value for each of the other performance parameters of thegroup based on the entered value of the selected performance parameterof the group and the corresponding established relationships of each ofthe other performance parameters with the selected performance parameterof the group; and storing the entered and derived values of theperformance parameters into the controller for use thereby in theoperation of the wheelchair by the user.

[0010] In accordance with another aspect of the present invention,apparatus for setting values of a multiplicity of performance parametersof a power driven wheelchair for use in the operation of the wheelchairby a user comprises: a microcontroller; a memory coupled to themicrocontroller for storing parameter values of at least two groupingsof the multiplicity of performance parameters of the wheelchair, eachgrouping including more than one performance parameter and including aselected performance parameter, the memory storing for each grouppre-established relationships between the selected performance parameterof the group and each of the other performance parameters of the group;a remote programmer unit interfaceable to the microcontroller for use inentering a value for the selected performance parameter of each group,the microcontroller responsive to the remote programmer for derivingautomatically for each group a value for each of the other performanceparameters of the group using the entered value of the selectedperformance parameter of the group and the stored correspondingestablished relationships of each of the other performance parameterswith the selected performance parameter of the group; and an alterablenon-volatile memory coupled to the microcontroller, the microcontrolleroperative to store the entered and derived values of the performanceparameters into the non-volatile memory for use in the operation of thewheelchair by the user.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a block diagram schematic illustration of an exemplarymotor drive arrangement for a wheelchair.

[0012]FIG. 2 is a table of exemplary empirically determined values for afirst group of performance parameters at predetermined speed settings.

[0013]FIG. 3 is a table of exemplary empirically determined values for asecond group of performance parameters at predetermined responsesettings.

[0014]FIG. 4 is an illustration of apparatus suitable for embodying anaspect of the present invention.

[0015]FIGS. 4A, 4B and 4C are exemplary screen image displays for use inthe operation of the apparatus of FIG. 4.

[0016]FIGS. 5A and 5B are flowcharts of an exemplary program executableby the apparatus of FIG. 4 for carrying out an aspect of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

[0017] In accordance with the present invention, a multiplicity ofperformance parameters of a power driven wheelchair are grouped into atleast two groups, each group including more than one performanceparameter. The multiplicity of performance parameters may include, butnot be limited to, forward speed, turning speed, reverse speed,response, forward acceleration, turn acceleration, turn deceleration,torque and braking (forward and reverse deceleration), for example. Asindicated above, values of these parameters are established for anaverage user and may be preset during manufacture and stored in thenon-volatile memory 32, which may be an electrically erasableprogrammable read only memory (EEPROM), for example. For the presentembodiment, each of these preset stored settings are given a label asfollows: forward speed=Speed_(—)0, turn speed=Turn Speed_(—)0, reversespeed=Reverse Speed_(—)0, response=Response_(—)0, forwardacceleration=Acceleration_(—)0, turn acceleration=Turn Accel_(—)0, turndeceleration=Turn Decel_(—)0, braking=Braking_(—)0, andtorque=Torque_(—)0.

[0018] In the present embodiment, the multiplicity of performanceparameters are grouped into first and second groups, wherein the firstgroup comprises: speed, forward speed, turning speed and reverse speed,and the second group comprises: response, forward acceleration, turningacceleration, turning deceleration, torque, braking and turning speed.While the speed and acceleration performance parameters need noexplanation, other performance parameters of the multiplicity may not beas well understood. For example, the response parameter controls theresponsiveness or quickness of the wheelchair to changes in drivecommands; the torque parameter controls the stiffness and trackingability of the wheelchair to joystick commands; and the brakingparameter controls the response time to slow or stop the wheelchair. Aparameter is selected for each group. For example, the forward speedparameter is selected for the first group and referred to as simple“Speed”, and the response parameter is selected for the second group andreferred to as simply “Response”.

[0019] Then, for each group, corresponding relationships between theselected performance parameter of the group and each of the otherperformance parameters of the group are respectively established. Theserelationships may be established by having a trained wheelchair medicalprofessional take empirical data of the parameters of each group throughvarious settings. Examples of such empirical data for the first groupare shown in the table of FIG. 2. The values shown in the table of FIG.2 for forward speed and turning speed represent a percentage of thefastest allowable forward speed of the wheelchair which is consideredthe 100% value. The fastest allowable speed is defined as the highestspeed attained when the joystick is displaced to its maximum. Note thatmaximum turning speed for the present embodiment is 60%. On the otherhand, the values shown for reverse speed represent a percentage of thefastest allowable speed in reverse which is considered 100%. Forexample, going across row 1 from left to right, the forward speed value95 and turning speed value 20 represents 95% and 20% of the fastestallowable forward speed, and the reverse speed value 35 represents 35%of the fastest reverse speed allowable.

[0020] Similarly, examples of empirical data taken for the second groupare shown in the table of FIG. 3. In the table of FIG. 3, the rows goingfrom top to bottom represent values corresponding to response settingsof 100%, 75%, 50%, 25%, and 0%, respectively. Also, the data values forforward acceleration represent a percentage of the quickest allowableacceleration for the wheelchair, i.e. the quickest time it takes toreach the maximum allowable speed, which is considered 100%. The datavalues for turn acceleration and deceleration represent a percentage ofthe quickest allowable response to turn commands which is considered100%. The data values for torque represent a percentage of the maximumallowable stiffness of chair response which is considered 100%. Notethat 0% torque represents the maximum allowable softness of chairresponse. Finally, the data values of braking represent a percentage ofthe maximum allowable braking capability of the wheelchair system whichis considered 100%.

[0021] Turning speed may be considered a part of the second group aswell and form a relationship with the selected response parameter.However, in the case of turning speed, it is first set according to therelationship with forward speed and that value, which is represented byan “X” in the table of FIG. 3, is adjusted in relation to the responsesetting. For example, at a response setting of 50%, the turning speed isadjusted to its present setting or 1.0 X.

[0022] The relationships between the selected parameter and the otherparameters of each group established by empirically taken data may bestored in the non-volatile memory 32 of the controller 10 in the form oflook-up tables similar to those shown in FIGS. 2 and 3, for example.More rows may be established by taking more data. Values for the otherparameters of the group related to a Speed setting in between the valuesof the table of FIG. 2 may be determined by extrapolation techniques,for example. That is, if the Speed is set at 70 which is between 75 and55, then the value of turning speed is extrapolated to be15+[(70−55)/(75−55)]×(17−15), which is 15+(¾)×2 or 16.5. Like wise, thevalue of reverse speed becomes 25+(¾)×5 or 28.75. Values for the otherparameters of the group related to a Response setting in between thevalues of the table of FIG. 3 may be also determined by extrapolationtechniques, for example. That is, if the Response setting is 60 between50 and 75, then each of the other parameters of the table of FIG. 3 maybe determined in the same manner as described above for the “in between”Speed value using extrapolation techniques.

[0023] Alternatively, instead of look-up tables being stored in thecontroller memory, certain mathematical relationships may be establishedfrom the empirical data taken for each group. For example, if theexemplary data of the table of FIG. 2 is plotted with respect to theforward speed data (“Speed”), linear relationships may be established asfollows:

[0024] (1) Forward speed=Speed,

[0025] (2) Turning speed=Turn Speed_(—)0×(Speed/Speed_(—)0), (subject tomin. value of 2% and max. value of 60%)

[0026] (3) Reverse speed=Reverse_(—)0×(Speed/Speed_(—)0), (subject tomin. value of 2% and max. value of 100%),

[0027] where Speed_(—)0, Turn Speed_(—)0, and Reverse_(—)0 are thepreset values stored in the EEPROM.

[0028] Likewise, if the exemplary data of the table of FIG. 3 is plottedwith respect to the response data (“Response”), linear and piecewiselinear relationships may be established as follows:

[0029] (4) Acceleration=Acceleration_(—)0+0.1×(Response−Response_(—)0),for Response<50%, or

[0030] Acceleration_(—)0+0.33×(Response−Response_(—)0), forResponse=>50%, (subject to a min. value of 0% and a max. value of 100%),

[0031] (5) Turn Accel=Turn Accel_(—)0+0.2×(Response−Response_(—)0),(subject to a min. value of 0% and a max. value of 100%),

[0032] (6) Turn Decel=Turn Decel_(—)0+0.2×(Response−Response_(—)0),(subject to a min. value of 0% and a max. value of 100%),

[0033] (7) Braking=Braking_(—)0+0.2×(Response−Response_(—)0), (subjectto a min. value of 0% and a max. value of 100%),

[0034] Torque=Torque_(—)0+0.1×(Response−Response_(—)0), forResponse<50%, or

[0035] Torque_(—)0+0.33×(Response−Response_(—)0), for Response=>50%,(subject to a min. value of 0% and a max. value of 100%),

[0036] Turn speed=Turn Speed_(—)0+0.12×(Response−Response_(—)0),(subject to a min, value of 2% and a max. value of 100%),

[0037] where Response_(—)0, Acceleration_(—)0, Turn Accel_(—)0, TurnDecel_(—)0, Braking_(—)0, Torque_(—)0, and Turn Speed_(—)0 are thestored preset values in the EEPROM.

[0038] Then, as each wheelchair leaves the factory, it will have thepreset values of the multiplicity of performance parameters determinedfor an average user and the foregoing described relationships betweenthe selected parameter and other parameters of each of at least twogroups stored in the non-volatile memory of the controller thereof. So,at the dealership, for example, as each such wheelchair is sold to auser, only the selected parameter of each group need be determined inaccordance with the unique operational capabilities of the user. In thepresent embodiment, the multiplicity of performance parameters aregrouped into two groups and the selected parameter for the first groupis Speed and for the second group is Response. Thus, for the presentembodiment, only the values of Speed and Response are determineduniquely to the user based on the user's capabilities of operating thewheelchair and the other parameters of each group are derivedautomatically by the controller from the Speed and Response values whichare entered into the controller once determined as will become moreevident from the following description.

[0039] Once the Speed and Response values are determined uniquely to theuser of the wheelchair, they are entered into the controller 10,preferably using the remote programmer 34. The block diagram schematicof FIG. 4 illustrates suitable apparatus for embodying the principles ofthe present invention. Referring to FIG. 4, the remote programmer 34comprises the screen 38 which may be a liquid crystal display (LCD), forexample, and a plurality of pushbuttons 40 for use in entering thedetermined Speed and Response values by interacting with the image onthe screen 38. More specifically, the pushbuttons 40 may include a PowerI/O (P), Save (Sa), Menu (M), Select (Se), up (↑) and down (↓)pushbuttons.

[0040] In the present embodiment, the remote programmer 34 communicateswith the controller 10 via serially coded signals over lines 42. Thecontroller 10 may include a programmed microcontroller 44 which may beof the type manufactured by Motorola bearing model no. MC9S12A128, forexample. The serial lines 42 may be coupled to the microcontroller 44through a serial communication controller 46 which may be of the typelicensed by Echelon Corporation and manufactured by Toshiba bearingmodel no. TMPN3150, for example. The tasks of the Echelon controller 46include setting the protocol, performing serial/parallel translations,checking for errors in transmission, and managing the traffic for theserial communication between the remote controller 34 andmicrocontroller 44.

[0041] The microcontroller 44 may include an internal memory 48 whichmay be of the random access (RAM) or scratch pad type, for example, andis coupled to the EEPROM 32 over address (A), data (D) and control (C)lines. While the memory 48 is shown internal to the microcontroller 44,it is understood that a portion or all of the memory 48 may be just aswell external to the microcontroller 44. Generally, when powered up, thecontroller 44 will boot up under program control and may access thepreset parameters and relationships stored in the EEPROM 32 and storethem temporarily to the scratch pad memory 48 for interaction with theremote programmer 34 and operation of the wheelchair. It is understoodthat when power is removed, the stored data of the RAM 48 will be lost.Only, the EEPROM will retain the data of its memory without power.

[0042] As indicated above, the microcontroller 34 is programmed tointeract with the remote controller 34 via signal lines 42 andcommunication controller 46 for entry of the Speed and Response valuesor settings and for the derivation of the other performance parametersusing the stored established relationships. The flowchart of FIGS. 5Aand 5B exemplifies a program for execution by the microcontroller 44 forperforming the aforementioned tasks. Referring to FIGS. 5A and 5B, inblock 50, the microcontroller 44 responds to the activation (depression)of the P pushbutton of the remote controller 34 by entering the programor parameter setting mode. In the next block 52, the microcontrollersets a pointer to value 0 and an adjust flag to false as will becomemore evident from the description below. Then, in block 54 an initialscreen menu image is transmitted to the programmer 34 for display on theLCD screen 38 thereof.

[0043] An exemplary menu image display is shown in FIG. 4A. Note thatthe initial Speed and Response parameter entry is programmed for Drive 1which is displayed at the middle top of the screen image. Also shown inthe exemplary image of FIG. 4A are three lines of text. The top andmiddle lines of the three respectively include the word “SPEED” followedby the preset value thereof and the word “RESPONSE” followed by thepreset value thereof, both values being accessed from the EEPROM 32 asdescribed herein above. The bottom line of the three includes the text“ADVANCED MENU”. The selection of each line of text is performed by themovement of an arrow pointer shown to the left of the image. Each lineposition of the pointer is correlated in the microcontroller programwith a number. For example, the number 0 represents the first line orSPEED pointer position, the number 1 represents the second line orRESPONSE pointer position, and the number 2 represents the third linepointer position. Since the pointer was set to 0 in block 52, a pointerimage will appear adjacent to the text “SPEED” in line 1 as shown inFIG. 4A.

[0044] Referring back to FIG. 5A, the controller waits for any of thepushbuttons (keys) 40 to be pressed in the decision block 56. Note thatthe decision block 56 will continue to loop upon itself until one of thekeys 40 is pressed. If the P key is pressed, then program execution willdiscontinue until the P key is once again depressed and then start backat block 50. If the Se key is depressed as determined by decision block,then program execution continues at block 60 in which the adjust flag isset true. Next, the pointer position is established by blocks 62, 64 and66. If the pointer is set at 0 as determined by block 62, programexecution continues at block 68; if the pointer is set at 1 asdetermined by block 64, program execution continues at block 70;otherwise program execution continues at block 66 which will bedescribed in greater detail herein below.

[0045] At block 68, the microcontroller 44 transmits a display screenimage for speed adjustment to the programmer 34 for display on the LCD38. An exemplary speed adjust screen display is shown in FIG. 4B. Notethat the current value of the SPEED parameter accessed from the EEPROMis initially displayed. In the image of FIG. 4B, an adjustment graphicin the form of a thermometer is displayed increasing from left to right,i.e. blocks are filled in from left to right as the SPEED parameter isadjusted up and vice versa. In this state, program execution continuesat block 56 waiting for either an ↑ or ↓ key depression. If the ↑ key ispressed, program execution continues at block 72 in FIG. 5B. Since theadjust flag is set true and pointer is set to 0, blocks 74 and 76 divertprogram execution to block 78 wherein SPEED parameter is incremented inpredetermined increments, which may be at approximately 1% increments,for example. In the present embodiment, the SPEED parameter may notexceed 100%. As the SPEED parameter is adjusted upward in block 78, thefirst group parameters of forward speed, turning speed and reverse speedare automatically derived by the microcontroller 44 in block 80according to the respectively associated stored relationships, like therespective relationships of equations (1), (2), and (3) described above,for example.

[0046] Likewise, if the ↓ key is pressed in this state, programexecution continues at block 82 in FIG. 5B. Since adjust is set true andpointer is set to 0, blocks 84 and 86 divert program execution to block88 wherein SPEED parameter is decremented in predetermined decrements,which may be at approximately 1% decrements, for example. In the presentembodiment, the SPEED parameter may not be adjusted below 2%. As theSPEED parameter is adjusted downward in block 88, the first groupparameters of forward speed, turning speed and reverse speed areautomatically derived by the microcontroller 44 in block 80 aspreviously described herein above. When the ↑ or ↓ key is released,program execution continues at block 56 via block 68 wherein the programwaits for a key to be pressed.

[0047] If the programmer has completed the entry of the determined valueof the SPEED parameter into the microcontroller, then the Sa key ispressed as determined by decision block 90 and program execution isdiverted to block 92 wherein the entered and derived values of theparameters of the first group are stored in appropriate storagelocations of the EEPROM 32 by the microcontroller 44. Thereafter, theprogram execution is returned to block 56. If the programmer desires toreturn to menu image of FIG. 4A, the M key maybe depressed which isdetected by block 94. Upon detection of the M key depression, the adjustflag is set false in block 96 and the menu image is displayed on thescreen 38 of the programmer 34 by the microcontroller 44. In the menuimage, the current value of SPEED is displayed numerically.

[0048] In the present state with the menu image displayed, theprogrammer may depress the ↓ key to move the pointer to the RESPONSEparameter which is detected by decision block 82. With the adjust flagset false, program execution is diverted by block 84 to block 98 whereinthe pointer position is incremented by 1, but not more than 2. When thepointer is incremented to 1, the pointer image on the screen 38 is movedby the microcontroller 44 adjacent RESPONSE so that when the Se key isdepressed, a response adjustment image will be displayed on the screen38 by the block 70. An exemplary RESPONSE parameter adjustment image isshown in FIG. 4C and includes a similar thermometer type graphic imageas displayed for the SPEED parameter adjustment screen of FIG. 4B. Also,when the Se key is pressed, the adjust flag is set true in block 60.

[0049] In the RESPONSE adjustment state, adjustment may be accomplishedby depressing the ↑ and ↓ keys. An ↑ key depression is detected by block72 in FIG. 5B. Since adjust is set true and pointer is set to 1, blocks74 and 76 divert program execution to block 100 wherein the RESPONSEparameter is incremented in predetermined increments, which may be atapproximately 1% increments, for example. In the present embodiment, theRESPONSE parameter may not exceed 100%. As the RESPONSE parameter isadjusted upward in block 100, the second group parameters of forwardacceleration, turn acceleration, turn deceleration, braking, torque andperhaps, turn speed are automatically derived by the microcontroller 44in block 102 according to the respectively associated storedrelationships, like the respective relationships of equations (4)through (9) described above, for example.

[0050] Likewise, an ↓ key depression in this state is detected by block82 in FIG. 5B. Since adjust is set true and pointer is set to 1, blocks84 and 86 divert program execution to block 104 wherein the RESPONSEparameter is decremented in predetermined decrements, which may be atapproximately 1% decrements, for example. In the present embodiment, theRESPONSE parameter may not be adjusted below 0%. As the RESPONSEparameter is adjusted downward in block 104, the second group parametersare automatically derived by the microcontroller 44 in block 102 aspreviously described herein above. When the ↑ or ↓ key is released,program execution continues at block 56 via block 70 wherein the programwaits for a key to be pressed.

[0051] If the programmer has completed the entry of the determined valueof the RESPONSE parameter into the microcontroller, then the Sa key ispressed as determined by decision block 90 and program execution isdiverted to block 92 wherein the entered and derived values of theparameters of the second group are stored in appropriate storagelocations of the EEPROM 32 by the microcontroller 44. Thereafter, theprogram execution is returned to block 56. If the programmer desires toreturn to menu image of FIG. 4A, the M key maybe depressed which isdetected by block 94. Upon detection of the M key depression, the adjustflag is set false in block 96 and the menu image is displayed on thescreen 38 of the programmer 34 by the microcontroller 44. In the menuimage, the current values of SPEED and RESPONSE are displayednumerically.

[0052] If the programmer wants to return to the SPEED adjustment, the ↑key is depressed which is detected by blocks 56 and 72. With the adjustflag set false, block 74 diverts program execution to block 106 whereinthe pointer is decremented by 1 to 0. The microcontroller 44 responds toa pointer setting of 0 by causing the pointer image to move adjacentSPEED in the menu image of screen 38. The programmer may also advance tothe ADVANCED MENU setting by depressing the appropriate keys toincrement the pointer to a setting of 2. In this state, the programenters the advance menu control mode of microcontroller 44 via executionof block 66 to permit the programmer to enter values for themultiplicity of parameters individually through a series of differentscreen images.

[0053] After the performance parameters are entered and derived for thefirst and second groups for the Drive 1 program, the P key is depressedto exit the program. Then, the medical advisor observes the useroperation and may make further modifications to the speed and responseparameters. When satisfactory user operation is achieved for a driveprogram setting, the next consecutive drive program, like Drive 2, forexample, may be selected utilizing the user interface 16 and conveyed tothe controller 10 via the serial coupling 20 (see FIG. 1). The medicaladvisor then observes the user operation in this drive program anddetermines if the speed and response parameters should be changed. Whenthe P key is pressed again, the program is again entered but at thisnext consecutive drive program which may be Drive 2, for example. Theforegoing described process may be repeated for entering and derivingthe user performance parameters for the groups of the Drive 2 program.In this manner, the performance parameters unique to the user of thewheelchair may be entered and derived accordingly for each of theprograms of the wheelchair and used in the operation thereof by theuser. Note that according to the inventive process, only a selectedparameter of each group need be determined uniquely for the user foreach drive program and the other parameters of the each group derivedautomatically in the controller according to the previously establishedrelationships stored in the memory of the controller. This improvementrepresents a substantial savings in time and money over the processheretofore practiced.

[0054] While the present invention has been presented above inconnection with one or more embodiments, it is understood that the useof such embodiments to describe the invention is solely by way ofexample. Accordingly, the present invention should not be limited in anyway by such embodiments, but rather construed in breadth and broad scopein accordance with the recitation of the claims appended hereto.

1. A method of setting values of a multiplicity of performanceparameters of a power driven wheelchair into a controller thereof foruse by said controller in the operation of said wheelchair by a user,said method comprising the steps of: grouping the multiplicity ofperformance parameters of said wheelchair into at least two groups, eachgroup including more than one performance parameter; for each group, (a)establishing a corresponding relationship between a selected performanceparameter of the group and each of the other performance parameters ofthe group; and (b) presetting said established relationships into thecontroller of said wheelchair; determining a value for the selectedperformance parameter of each group based on the user's capabilities ofoperating said wheelchair; entering said determined value for theselected performance parameter of each group into the controller;deriving automatically by the controller for each group a value for eachof the other performance parameters of the group based on the enteredvalue of the selected performance parameter of the group and thecorresponding established relationships of each of the other performanceparameters with the selected performance parameter of the group; andstoring the entered and derived values of the performance parametersinto the controller for use thereby in the operation of said wheelchairby the user.
 2. The method of claim 1 wherein the step of groupingincludes grouping the multiplicity of performance parameters into firstand second groups; and wherein forward speed is the selected parameterof the first group and response is the selected parameter of the secondgroup.
 3. The method of claim 2 wherein the performance parameterscomprising forward speed, turning speed and reverse speed are groupedinto the first group; and wherein the performance parameters comprisingresponse, forward acceleration, turning acceleration, turningdeceleration, torque and braking are grouped into the second group. 4.The method of claim 3 wherein the step of establishing for the firstgroup includes: establishing a first linear relationship between forwardspeed and turning speed, and establishing a second linear relationshipbetween forward speed and reverse speed.
 5. The method of claim 3wherein the step of establishing for the second group includesestablishing the following relationships: first and second piecewiselinear relationships between response and forward acceleration, a thirdlinear relationship between response and turning acceleration, a fourthlinear relationship between response and turning deceleration, a fifthlinear relationship between response and braking, and sixth and seventhpiecewise linear relationships between response and torque.
 6. Themethod of claim 1 including the step of presetting the controller withinitial performance parameter values; and wherein the step ofestablishing includes establishing each corresponding relationshipbetween the selected performance parameter of the group and each of theother performance parameters of the group using the preset initialperformance parameter values corresponding to each parameter of therelationship.
 7. The method of claim 1 wherein the step (b) ofpresetting includes programming the established relationships into amicrocontroller of the controller of the wheelchair.
 8. The method ofclaim 7 wherein the step of entering includes entering the determinedvalue for the selected performance parameter of each group into a memoryof the microcontroller through a remote programmer unit interfaceable tothe microcontroller.
 9. The method of claim 8 wherein the otherperformance parameters of each group are derived automatically by themicrocontroller based on the entered value of the corresponding selectedperformance parameter.
 10. The method of claim 9 wherein the entered andderived values of the performance parameters are stored in anon-volatile memory by the microcontroller for use by themicrocontroller in the operation of the wheelchair by the user. 11.Apparatus for setting values of a multiplicity of performance parametersof a power driven wheelchair for use in the operation of said wheelchairby a user, said apparatus comprising: a microcontroller; a memorycoupled to said microcontroller for storing parameter values of at leasttwo groupings of the multiplicity of performance parameters of saidwheelchair, each grouping including more than one performance parameterand including a selected performance parameter, said memory storing foreach group pre-established relationships between the selectedperformance parameter of the group and each of the other performanceparameters of the group; a remote programmer unit interfaceable to themicrocontroller for use in entering a value for the selected performanceparameter of each group, said microcontroller responsive to the remoteprogrammer for deriving automatically for each group a value for each ofthe other performance parameters of the group using the entered value ofthe selected performance parameter of the group and the storedcorresponding established relationships of each of the other performanceparameters with the selected performance parameter of the group; and analterable non-volatile memory coupled to the microcontroller, saidmicrocontroller operative to store the entered and derived values of theperformance parameters into the non-volatile memory for use in theoperation of the wheelchair by the user.
 12. The apparatus of claim 11wherein the memory stores a first group of performance parameterscomprising forward speed, turning speed and reverse speed, forward speedbeing the selected parameter of the first group; and wherein the memorystores a second group of performance parameters comprising response,forward acceleration, turning acceleration, turning deceleration, torqueand braking, response being the selected parameter of the second group.13. The apparatus of claim 12 wherein the memory stores for the firstgroup a first linear relationship between forward speed and turningspeed, and a second linear relationship between forward speed andreverse speed.
 14. The apparatus of claim 12 wherein the memory storesfor the second group the following relationships: first and secondpiecewise linear relationships between response and forwardacceleration, a third linear relationship between response and turningacceleration, a fourth linear relationship between response and turningdeceleration, a fifth linear relationship between response and braking,and sixth and seventh piecewise linear relationships between responseand torque.
 15. The apparatus of claim 11 wherein the non-volatilememory is preset with initial values for the multiplicity of performanceparameter; and wherein the microcontroller is responsive to the remoteprogrammer for adjusting the initial selected performance parametervalues to respective determined values.
 16. The apparatus of claim 15wherein the memory stores for each group each corresponding relationshipbetween the selected performance parameter of the group and each of theother performance parameters of the group using the initial performanceparameter values corresponding to each parameter of the relationship.